package com.yfree.config

import com.google.code.kaptcha.impl.DefaultKaptcha
import com.google.code.kaptcha.util.Config
import org.springframework.context.annotation.Bean
import org.springframework.context.annotation.Configuration
import java.util.*

@Configuration
class KaptchaConfig {
    @Bean
    fun getDefaultKaptcha(): DefaultKaptcha? {
        val defaultKaptcha = DefaultKaptcha()
        val properties = Properties()
        // 图片边框
        properties.setProperty("kaptcha.border", "yes")
        // 边框颜色
        properties.setProperty("kaptcha.border.color", "105,179,90")
        // 字体颜色
        properties.setProperty("kaptcha.textproducer.font.color", "red")
        // 图片宽
        properties.setProperty("kaptcha.image.width", "330")
        // 图片高
        properties.setProperty("kaptcha.image.height", "120")
        // 字体大小
        properties.setProperty("kaptcha.textproducer.font.size", "90")
        // session key
        properties.setProperty("kaptcha.session.key", "code")
        // 验证码长度
        properties.setProperty("kaptcha.textproducer.char.length", "4")
        // 字体
        properties.setProperty("kaptcha.textproducer.font.names", "宋体,楷体,微软雅黑")
        val config = Config(properties)
        defaultKaptcha.config = config
        return defaultKaptcha
    }
}
